The invention relates to processing component digital video data.
Many component video models define a pixel as a combination of three pixel parameters. In one model, the pixel parameters include a luminance Y, a first color difference signal CR, and a second color difference signal CB, the last two parameters also being referred to as xe2x80x9ccolor dataxe2x80x9d herein. For this model, creating an image entails assigning values of Y, CR, and CB to each pixel of the image.
Often, video component assignments are subject to errors that affect an image globally. These global errors may produce incorrect values for the image""s contrast, black-level, hue, or color saturation.
Errors may result from improper preparation, handling, and/or transmission of the image""s data, or from particular light conditions or particular equipment. For example, offset errors in component video data can occur due to incorrect setting of signal levels, losses, or equipment drift. These types of errors can cause global video component errors in both component analog video data and component digital video data derived from analog data.
One way to correct a global video component error is to perform a transformation on the component video data. The transformation can be carried out by software, or by hardware in a processing amplifier also known as a xe2x80x9cprocamp.xe2x80x9d For the above-described color model, the correcting transformation changes the Y, CR, CB values of each affected pixel as follows:
Yxe2x80x2=GyY+B,
CRxe2x80x2=(GCGCRCR)cos xcfx86xe2x88x92(GCGCBCB)sin xcfx86,
CBxe2x80x2=(GCGCBCB)cos xcfx86+(GCGCRCR)sin xcfx86.
The values of the transformed pixel parameters Yxe2x80x2, CRxe2x80x2, CBxe2x80x2 are given in terms of the original pixel parameters Y, CR, CB and the values of parameters defining the transformation. The parameters defining the transformation include factors such as the contrast and chrominance gains GY and GC, the color-difference saturation gains GCR and GCB; a blackness offset B, and the hue rotation angle xcfx86. Jacks, Keith, Video Demystified, p. 422, describes carrying out this transformation with seven multiplication steps, which, if implemented in hardware, would require seven multipliers.
When such a color transformation is carried out, values for the contrast and chrominance gains Gy, GC, the color difference saturation gains GCR, GCB, the blackness offset B, and the hue rotation angle xcfx86 must be provided. For example, the values of these parameters may be set manually by a user. If the component video data is digital, the procamp may perform color transformations digitally.
In a first aspect, the invention provides a procamp to transform component digital video data. The procamp includes a digital multiplier coupled to receive component digital video data corresponding to at least two different pixel parameters. The digital multiplier is configured to selectively multiply the component video data for different pixel parameters by different factors.
In various embodiments, the procamp may further include a multiplexer having input terminals coupled to sources of the different factors and an output terminal coupled to the multiplier. The procamp may also include a controller coupled to cause the multiplexer to transmit first and second factors in response to component video data for first and second pixel parameters being received at the multiplier.
In some embodiments, the multiplier multiplies luminance and color difference data by luminance and color difference saturation gains, respectively. The multiplier may receive the gains from a multiplexer. The multiplexer transmits the luminance and saturation gains in response to respective luminance and color difference data being sent to the multiplier.
In some embodiments the digital multiplier multiplies CR and CB color difference data by the corresponding color difference saturation gains, respectively. The multiplier may receive the saturation gains from a multiplexer.
In some embodiments, the multiplier produces first and second new component video data by multiplying a color data portion of the received component video data by respective first and second hue factors. The hue factors are the sine of an angle and cosine of the angle.
The angle defines a hue rotation of the color data.
In some embodiments, the procamp includes a buffer coupled to receive the component digital video data and to transmit the received data to the digital multiplier.
In some embodiments, the procamp includes a second digital multiplier coupled to receive color data of the component video data produced by the first multiplier. The second digital multiplier is configured to produce first and second new color data by multiplying each color datum received from the first multiplier by the sine of an angle and the cosine of an angle, respectively. The angle defines a hue rotation of the color data. The procamp may include an adder coupled to receive the new color data and to produce color data with a new hue by adding the first and second new color data.
The procamp may include an adder to add a black-level offset to processed digital data and, a second digital multiplier coupled to receive the color data produced by the first multiplier.
The procamp may also include a separator coupled to receive the component video data from the first multiplier. The separator sends a portion of the data from the first multiplier to the adder in response to the data corresponding to a first pixel parameter. The separator sends a color data portion of the component video data received from the first multiplier to a second multiplier.
In a second aspect, the invention provides a method of transforming a sequence of component digital video data. The method includes receiving the sequence of the component video data, serially transmitting the received data to a digital multiplier, and multiplying each transmitted datum by a preselected factor in the multiplier. The component video data of the sequence corresponds to at least two different pixel parameters.
In some embodiments, the acts of multiplying produce products with at least two different gains. The acts of multiplying may multiply data corresponding to each particular pixel parameter with a gain assigned to the particular pixel parameter.
In some embodiments, the method includes temporally interleaving the two different gains to the multiplier to perform the acts of multiplying. The method may further include sending a portion of the sequence from the first digital multiplier to a second digital multiplier and producing first and second data components from each datum of the portion. The acts of producing use the second digital multiplier to multiply each sent datum by first and second new digital factors. The new digital factors are a sine and a cosine of an angle. The method may further include producing transformed digital color difference data by summing pairs of the produced data components.
In a third aspect, the invention provides a method of adjusting contrast and saturation levels of serially streaming component digital video data. The method includes receiving a sequence of the component digital video data, sequentially sending the data to a digital multiplier, and multiplying the component video data by contrast and saturation gains in the multiplier.
In some embodiments, the method includes temporally interleaving the contrast and saturation gains to the digital multiplier. These embodiments may include sending a portion of the data of the sequence from the first digital multiplier to a second digital multiplier. The second digital multiplier produces first and second digital data components from each datum of the portion by multiplying each sent datum by a sine of an angle and a cosine of the angle. The method may produce transformed digital color difference data by summing pairs of the produced data components.
Various embodiments provide inexpensive digital procamps that process sequentially transmitted component video data. These procamps use one digital multiplier to perform more than one of the multiplications involved in color transformations.
Other advantages and features of the invention will be apparent from the following description of preferred embodiments thereof and from the claims.
The details of one or more embodiments of the invention are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the invention will be apparent from the description and drawings, and from the claims.